package com.fiap.to;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.PrePersist;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "AM_USUARIO")
public class UsuarioTO implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	@Id
	@GenericGenerator(name = "seq_usuario", strategy = "increment")
	@GeneratedValue(generator = "seq_usuario")
	@Column(name = "ID_USUario")
	private int userId;
	@Column
	private String user;
	@Column
	private String password;
	@Column
	private boolean autenticado;
	@Column
	private int nivelAcesso;

	@PrePersist
	private void executaAntesDePersistir() {
		System.out.println("Persistindo...");
	}

	public UsuarioTO() {

	}

	/**
	 * @param userId
	 * @param user
	 * @param password
	 * @param autenticado
	 * @param nivelAcesso
	 */
	public UsuarioTO(int userId, String user, String password,
			boolean autenticado, int nivelAcesso) {
		super();
		this.userId = userId;
		this.user = user;
		this.password = password;
		this.autenticado = autenticado;
		this.nivelAcesso = nivelAcesso;
	}

	public boolean isAutenticado() {
		return autenticado;
	}

	public void setAutenticado(boolean autenticado) {
		this.autenticado = autenticado;
	}

	public int getUserId() {
		return userId;
	}

	public void setUserId(int userId) {
		this.userId = userId;
	}

	public String getUser() {
		return user;
	}

	public void setUser(String user) {
		this.user = user;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}

	public int getNivelAcesso() {
		return nivelAcesso;
	}

	public void setNivelAcesso(int nivelAcesso) {
		this.nivelAcesso = nivelAcesso;
	}

}
